home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 090 / maxhead2.arc / MAX-HEAD.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1986-08-27  |  2.6 KB  |  105 lines

  1. Program MaxHeadroom(Input,Output,Disk);
  2.  
  3. { by Robert Kemmetmueller, but don't tell anyone, I stole the speech routines }
  4.  
  5. {
  6.  This is the Turbo Pascal include-file for the speech driver.  The
  7.  parameter S must be a character string containing valid phoneme codes:
  8.  
  9.    CODE   SOUND  (capitalized in sample word)
  10.    ----   -----
  11.     A     mAke   = m-A-k
  12.     AE    bAt    = b-AE-t
  13.     AH    cAr    = k-AH-r
  14.     AW    dOg    = d-AW-g
  15.     B     Bat    = B-ae-t
  16.     CH    CHeese = CH-ee-z
  17.     D     Dog    = D-aw-g
  18.     EE    bE     = b-EE
  19.     EH    bEt    = b-EH-t
  20.     F     raFt   = r-ae-F-t
  21.     G     Go     = G-oh
  22.     H     Hive   = H-i-v
  23.     I     tIme   = t-I-m
  24.     IH    sIt    = s-IH-t
  25.     J     Jet    = J-eh-t
  26.     K     Kill   = K-ih-l
  27.     L     Love   = L-uh-v
  28.     M     Map    = M-ae-p
  29.     N     Nab    = N-ae-b
  30.     OH    gO     = g-OH
  31.     OO    gOO    = g-OO
  32.     P     Pat    = P-ae-t
  33.     R     Rat    = R-ae-t
  34.     S     Sat    = S-ae-t
  35.     SH    SHe    = SH-ee
  36.     T     Tap    = T-ae-p
  37.     TH    THin   = TH-ih-n
  38.     TZ    THis   = TZ-ih-s
  39.     U     wOrd   = w-U-r-d
  40.     UH    bUt    = b-UH-t
  41.     V     Vat    = V-ae-t
  42.     W     With   = W-ih-th
  43.     WH    WHich  = WH-ih-ch
  44.     Y     Yes    = Y-eh-s
  45.     Z     Zap    = Z-ae-p
  46.     ZH    viSion = v-ih-ZH-eh-n
  47.     -     inter-phoneme separator
  48.    space  inter-word pause
  49. }
  50.  
  51. Type
  52.     SpeechString= String[255];
  53.     Screen= Array[1..24,1..80] of Integer;
  54.     TwoScreens= Array[1..2] of Screen;
  55.     Registers= Record
  56.                    AX,BX,CX,DX,BP,SI,DI,DS,ES,Flags: Integer;
  57.                    end;
  58.  
  59. Var
  60.     Disk: File of TwoScreens;
  61.     Scrns: TwoScreens;
  62.     Scrn: Screen Absolute $B800:$0000;
  63.     Regs: Registers;
  64.     I,J: Integer;
  65.  
  66. Procedure Say(S: SpeechString);       External 'A:SPEECH.BIN';
  67.  
  68. Procedure Scrn0;
  69.     Begin
  70.         Scrn:=Scrns[1];
  71.         End;
  72.  
  73. Procedure Scrn1;
  74.     Begin
  75.         Scrn:=Scrns[2];
  76.         End;
  77.  
  78. BEGIN
  79.     TextMode(C80); TextColor(7); ClrScr;
  80.     Assign(Disk,'MAX-HEAD.DAT'); Reset(Disk);
  81.     Read(Disk,Scrns); Close(Disk);
  82.     Scrn0; Say('   ');
  83.     Scrn1; Say('G-r');
  84.     Scrn0; Say('ee');
  85.     Scrn1; Say('t-ih-n-g-z');
  86.     Scrn0; Say('  ');
  87.     Scrn1; Say('Tz-ih-s');
  88.     Scrn0; Say('s ');
  89.     Scrn1; Say('ih-z');
  90.     Scrn0; Say(' ');
  91.     For I:=1 to 3 do begin
  92.         Scrn1; Say('M');
  93.         Scrn0; Delay(50); end;
  94.     Scrn1; Say('ae-k-s');
  95.     Scrn0; Say(' ');
  96.     Scrn1; Say('H-eh-d');
  97.     Scrn0; Say('r');
  98.     Scrn1; Say('oo-m');
  99.     Scrn0; Say('   ');
  100.     For I:=1 to 3 do begin
  101.         Scrn1; Say('H-ah');
  102.         Scrn0; Delay(50); end;
  103.     ClrScr;
  104.     END.
  105.